package com.ruoyi.match.mapper;

import java.util.List;
import com.ruoyi.match.domain.Invite;
import com.ruoyi.match.domain.vo.InviteVo;

/**
 * 邀请Mapper接口
 * 
 * @author zhangrui
 * @date 2025-04-08
 */
public interface InviteMapper 
{
    /**
     * 查询邀请
     * 
     * @param fromId 邀请主键
     * @return 邀请
     */
    public Invite selectInviteByFromId(Long fromId);

    /**
     * 查询邀请列表
     * 
     * @param invite 邀请
     * @return 邀请集合
     */
    public List<Invite> selectInviteList(Invite invite);

    /**
     * 新增邀请
     * 
     * @param invite 邀请
     * @return 结果
     */
    public int insertInvite(Invite invite);

    /**
     * 修改邀请
     * 
     * @param invite 邀请
     * @return 结果
     */
    public int updateInvite(Invite invite);

    /**
     * 删除邀请
     * 
     * @param fromId 邀请主键
     * @return 结果
     */
    public int deleteInviteByFromId(Long fromId);

    /**
     * 批量删除邀请
     * 
     * @param fromIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteInviteByFromIds(Long[] fromIds);

    /**
     * 查询我发出的邀请列表
     */
    public List<InviteVo>  showMyInviteList(Long userId);

    /**
     * 查询我收到的邀请列表
     */
    public List<InviteVo> showInviteMeList(Long userId);


    /**
     * 接受邀请
     */
    public int updateInvitingStatus(Invite invite);


}
